package com.workcell.workdata.xthings.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonAlias;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 温湿度计
 *
 * @author guogyu
 * @date 2023-04-15 14:15:50
 */
@Data
@TableName("t_base_temperature_humidity")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "温湿度计型号")
public class BaseTemperatureHumidity extends Model<BaseTemperatureHumidity> {
	private static final long serialVersionUID = 1L;

	/**
	 * 温湿度计ID
	 */
	@TableId(type = IdType.AUTO)
	@ApiModelProperty(value="温湿度计ID")
	private Long id;

	/**
	 * 设备名称
	 */
	@ApiModelProperty(value="设备名称")
	private String name;

	/**
	 * 厂商名称
	 */
	@ApiModelProperty(value="厂商名称")
	private String manufacturer;

	/**
	 * 产品类型
	 */
	@ApiModelProperty(value="产品类型")
	private String dcProductType;

	/**
	 * 型号
	 */
	@ApiModelProperty(value="型号")
	private String dcModel;

	/**
	 * 状态
	 */
	@ApiModelProperty(value="状态")
	private String state;

	/**
	 * 创建人
	 */
	@TableField(fill = FieldFill.INSERT)
	@ApiModelProperty(value="创建人")
	private String createBy;

	/**
	 * 创建时间
	 */
	@TableField(fill = FieldFill.INSERT)
	@ApiModelProperty(value="创建时间")
	private LocalDateTime createTime;

	/**
	 * 更新人
	 */
	@TableField(fill = FieldFill.INSERT_UPDATE)
	@ApiModelProperty(value="更新人")
	private String updateBy;

	/**
	 * 更新时间
	 */
	@TableField(fill = FieldFill.INSERT_UPDATE)
	@ApiModelProperty(value="更新时间")
	private LocalDateTime updateTime;

	/**
	 * 厂商编码（厂商ID）
	 */
	@JsonAlias("deviceManufacturer")
	@ApiModelProperty("厂商编码（厂商ID）")
	private String manufacturerCode;

	@TableField(exist = false)
	@ApiModelProperty(value="厂商编码（厂商ID）")
	private String deviceManufacturer;

	/**
	 * 厂商简称
	 */
	@ApiModelProperty("厂商简称")
	private String manufacturerShortName;

	/**
	 * 厂商全称
	 */
	@ApiModelProperty("厂商全称")
	private String manufacturerFullName;

}
